/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package cn.edu.cuc.yjsy.report;

import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;

/**
 * <!-- begin-user-doc -->
 * The <b>Package</b> for the model.
 * It contains accessors for the meta objects to represent
 * <ul>
 *   <li>each class,</li>
 *   <li>each feature of each class,</li>
 *   <li>each enum,</li>
 *   <li>and each data type</li>
 * </ul>
 * <!-- end-user-doc -->
 * @see cn.edu.cuc.yjsy.report.ReportFactory
 * @model kind="package"
 * @generated
 */
public interface ReportPackage extends EPackage {
	/**
	 * The package name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNAME = "report";

	/**
	 * The package namespace URI.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNS_URI = "http://cn.edu.cuc.yjsy/model/report.ecore";

	/**
	 * The package namespace name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNS_PREFIX = "report";

	/**
	 * The singleton instance of the package.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	ReportPackage eINSTANCE = cn.edu.cuc.yjsy.report.impl.ReportPackageImpl.init();

	/**
	 * The meta object id for the '{@link cn.edu.cuc.yjsy.report.impl.ReportElementImpl <em>Element</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see cn.edu.cuc.yjsy.report.impl.ReportElementImpl
	 * @see cn.edu.cuc.yjsy.report.impl.ReportPackageImpl#getReportElement()
	 * @generated
	 */
	int REPORT_ELEMENT = 0;

	/**
	 * The feature id for the '<em><b>Id</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_ELEMENT__ID = 0;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_ELEMENT__NAME = 1;

	/**
	 * The feature id for the '<em><b>Comment</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_ELEMENT__COMMENT = 2;

	/**
	 * The number of structural features of the '<em>Element</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_ELEMENT_FEATURE_COUNT = 3;

	/**
	 * The meta object id for the '{@link cn.edu.cuc.yjsy.report.impl.ReportFolderImpl <em>Folder</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see cn.edu.cuc.yjsy.report.impl.ReportFolderImpl
	 * @see cn.edu.cuc.yjsy.report.impl.ReportPackageImpl#getReportFolder()
	 * @generated
	 */
	int REPORT_FOLDER = 1;

	/**
	 * The meta object id for the '{@link cn.edu.cuc.yjsy.report.impl.ReportRootImpl <em>Root</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see cn.edu.cuc.yjsy.report.impl.ReportRootImpl
	 * @see cn.edu.cuc.yjsy.report.impl.ReportPackageImpl#getReportRoot()
	 * @generated
	 */
	int REPORT_ROOT = 3;

	/**
	 * The meta object id for the '{@link cn.edu.cuc.yjsy.report.impl.ReportImpl <em>Report</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see cn.edu.cuc.yjsy.report.impl.ReportImpl
	 * @see cn.edu.cuc.yjsy.report.impl.ReportPackageImpl#getReport()
	 * @generated
	 */
	int REPORT = 4;

	/**
	 * The meta object id for the '{@link cn.edu.cuc.yjsy.report.impl.ReportItemImpl <em>Item</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see cn.edu.cuc.yjsy.report.impl.ReportItemImpl
	 * @see cn.edu.cuc.yjsy.report.impl.ReportPackageImpl#getReportItem()
	 * @generated
	 */
	int REPORT_ITEM = 2;

	/**
	 * The feature id for the '<em><b>Id</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_ITEM__ID = REPORT_ELEMENT__ID;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_ITEM__NAME = REPORT_ELEMENT__NAME;

	/**
	 * The feature id for the '<em><b>Comment</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_ITEM__COMMENT = REPORT_ELEMENT__COMMENT;

	/**
	 * The feature id for the '<em><b>Parent</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_ITEM__PARENT = REPORT_ELEMENT_FEATURE_COUNT + 0;

	/**
	 * The number of structural features of the '<em>Item</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_ITEM_FEATURE_COUNT = REPORT_ELEMENT_FEATURE_COUNT + 1;


	/**
	 * The feature id for the '<em><b>Id</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_FOLDER__ID = REPORT_ITEM__ID;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_FOLDER__NAME = REPORT_ITEM__NAME;

	/**
	 * The feature id for the '<em><b>Comment</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_FOLDER__COMMENT = REPORT_ITEM__COMMENT;

	/**
	 * The feature id for the '<em><b>Parent</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_FOLDER__PARENT = REPORT_ITEM__PARENT;

	/**
	 * The feature id for the '<em><b>Reports</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_FOLDER__REPORTS = REPORT_ITEM_FEATURE_COUNT + 0;

	/**
	 * The number of structural features of the '<em>Folder</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_FOLDER_FEATURE_COUNT = REPORT_ITEM_FEATURE_COUNT + 1;

	/**
	 * The feature id for the '<em><b>Id</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_ROOT__ID = REPORT_ELEMENT__ID;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_ROOT__NAME = REPORT_ELEMENT__NAME;

	/**
	 * The feature id for the '<em><b>Comment</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_ROOT__COMMENT = REPORT_ELEMENT__COMMENT;

	/**
	 * The feature id for the '<em><b>Folders</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_ROOT__FOLDERS = REPORT_ELEMENT_FEATURE_COUNT + 0;

	/**
	 * The number of structural features of the '<em>Root</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_ROOT_FEATURE_COUNT = REPORT_ELEMENT_FEATURE_COUNT + 1;

	/**
	 * The feature id for the '<em><b>Id</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT__ID = REPORT_ITEM__ID;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT__NAME = REPORT_ITEM__NAME;

	/**
	 * The feature id for the '<em><b>Comment</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT__COMMENT = REPORT_ITEM__COMMENT;

	/**
	 * The feature id for the '<em><b>Parent</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT__PARENT = REPORT_ITEM__PARENT;

	/**
	 * The feature id for the '<em><b>Url</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT__URL = REPORT_ITEM_FEATURE_COUNT + 0;

	/**
	 * The number of structural features of the '<em>Report</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPORT_FEATURE_COUNT = REPORT_ITEM_FEATURE_COUNT + 1;


	/**
	 * Returns the meta object for class '{@link cn.edu.cuc.yjsy.report.ReportElement <em>Element</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Element</em>'.
	 * @see cn.edu.cuc.yjsy.report.ReportElement
	 * @generated
	 */
	EClass getReportElement();

	/**
	 * Returns the meta object for the attribute '{@link cn.edu.cuc.yjsy.report.ReportElement#getId <em>Id</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Id</em>'.
	 * @see cn.edu.cuc.yjsy.report.ReportElement#getId()
	 * @see #getReportElement()
	 * @generated
	 */
	EAttribute getReportElement_Id();

	/**
	 * Returns the meta object for the attribute '{@link cn.edu.cuc.yjsy.report.ReportElement#getName <em>Name</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see cn.edu.cuc.yjsy.report.ReportElement#getName()
	 * @see #getReportElement()
	 * @generated
	 */
	EAttribute getReportElement_Name();

	/**
	 * Returns the meta object for the attribute '{@link cn.edu.cuc.yjsy.report.ReportElement#getComment <em>Comment</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Comment</em>'.
	 * @see cn.edu.cuc.yjsy.report.ReportElement#getComment()
	 * @see #getReportElement()
	 * @generated
	 */
	EAttribute getReportElement_Comment();

	/**
	 * Returns the meta object for class '{@link cn.edu.cuc.yjsy.report.ReportFolder <em>Folder</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Folder</em>'.
	 * @see cn.edu.cuc.yjsy.report.ReportFolder
	 * @generated
	 */
	EClass getReportFolder();

	/**
	 * Returns the meta object for the containment reference list '{@link cn.edu.cuc.yjsy.report.ReportFolder#getReports <em>Reports</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Reports</em>'.
	 * @see cn.edu.cuc.yjsy.report.ReportFolder#getReports()
	 * @see #getReportFolder()
	 * @generated
	 */
	EReference getReportFolder_Reports();

	/**
	 * Returns the meta object for class '{@link cn.edu.cuc.yjsy.report.ReportItem <em>Item</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Item</em>'.
	 * @see cn.edu.cuc.yjsy.report.ReportItem
	 * @generated
	 */
	EClass getReportItem();

	/**
	 * Returns the meta object for the reference '{@link cn.edu.cuc.yjsy.report.ReportItem#getParent <em>Parent</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Parent</em>'.
	 * @see cn.edu.cuc.yjsy.report.ReportItem#getParent()
	 * @see #getReportItem()
	 * @generated
	 */
	EReference getReportItem_Parent();

	/**
	 * Returns the meta object for class '{@link cn.edu.cuc.yjsy.report.ReportRoot <em>Root</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Root</em>'.
	 * @see cn.edu.cuc.yjsy.report.ReportRoot
	 * @generated
	 */
	EClass getReportRoot();

	/**
	 * Returns the meta object for the containment reference list '{@link cn.edu.cuc.yjsy.report.ReportRoot#getFolders <em>Folders</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Folders</em>'.
	 * @see cn.edu.cuc.yjsy.report.ReportRoot#getFolders()
	 * @see #getReportRoot()
	 * @generated
	 */
	EReference getReportRoot_Folders();

	/**
	 * Returns the meta object for class '{@link cn.edu.cuc.yjsy.report.Report <em>Report</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Report</em>'.
	 * @see cn.edu.cuc.yjsy.report.Report
	 * @generated
	 */
	EClass getReport();

	/**
	 * Returns the meta object for the attribute '{@link cn.edu.cuc.yjsy.report.Report#getUrl <em>Url</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Url</em>'.
	 * @see cn.edu.cuc.yjsy.report.Report#getUrl()
	 * @see #getReport()
	 * @generated
	 */
	EAttribute getReport_Url();

	/**
	 * Returns the factory that creates the instances of the model.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the factory that creates the instances of the model.
	 * @generated
	 */
	ReportFactory getReportFactory();

	/**
	 * <!-- begin-user-doc -->
	 * Defines literals for the meta objects that represent
	 * <ul>
	 *   <li>each class,</li>
	 *   <li>each feature of each class,</li>
	 *   <li>each enum,</li>
	 *   <li>and each data type</li>
	 * </ul>
	 * <!-- end-user-doc -->
	 * @generated
	 */
	interface Literals  {
		/**
		 * The meta object literal for the '{@link cn.edu.cuc.yjsy.report.impl.ReportElementImpl <em>Element</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see cn.edu.cuc.yjsy.report.impl.ReportElementImpl
		 * @see cn.edu.cuc.yjsy.report.impl.ReportPackageImpl#getReportElement()
		 * @generated
		 */
		EClass REPORT_ELEMENT = eINSTANCE.getReportElement();

		/**
		 * The meta object literal for the '<em><b>Id</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute REPORT_ELEMENT__ID = eINSTANCE.getReportElement_Id();

		/**
		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute REPORT_ELEMENT__NAME = eINSTANCE.getReportElement_Name();

		/**
		 * The meta object literal for the '<em><b>Comment</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute REPORT_ELEMENT__COMMENT = eINSTANCE.getReportElement_Comment();

		/**
		 * The meta object literal for the '{@link cn.edu.cuc.yjsy.report.impl.ReportFolderImpl <em>Folder</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see cn.edu.cuc.yjsy.report.impl.ReportFolderImpl
		 * @see cn.edu.cuc.yjsy.report.impl.ReportPackageImpl#getReportFolder()
		 * @generated
		 */
		EClass REPORT_FOLDER = eINSTANCE.getReportFolder();

		/**
		 * The meta object literal for the '<em><b>Reports</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference REPORT_FOLDER__REPORTS = eINSTANCE.getReportFolder_Reports();

		/**
		 * The meta object literal for the '{@link cn.edu.cuc.yjsy.report.impl.ReportItemImpl <em>Item</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see cn.edu.cuc.yjsy.report.impl.ReportItemImpl
		 * @see cn.edu.cuc.yjsy.report.impl.ReportPackageImpl#getReportItem()
		 * @generated
		 */
		EClass REPORT_ITEM = eINSTANCE.getReportItem();

		/**
		 * The meta object literal for the '<em><b>Parent</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference REPORT_ITEM__PARENT = eINSTANCE.getReportItem_Parent();

		/**
		 * The meta object literal for the '{@link cn.edu.cuc.yjsy.report.impl.ReportRootImpl <em>Root</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see cn.edu.cuc.yjsy.report.impl.ReportRootImpl
		 * @see cn.edu.cuc.yjsy.report.impl.ReportPackageImpl#getReportRoot()
		 * @generated
		 */
		EClass REPORT_ROOT = eINSTANCE.getReportRoot();

		/**
		 * The meta object literal for the '<em><b>Folders</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference REPORT_ROOT__FOLDERS = eINSTANCE.getReportRoot_Folders();

		/**
		 * The meta object literal for the '{@link cn.edu.cuc.yjsy.report.impl.ReportImpl <em>Report</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see cn.edu.cuc.yjsy.report.impl.ReportImpl
		 * @see cn.edu.cuc.yjsy.report.impl.ReportPackageImpl#getReport()
		 * @generated
		 */
		EClass REPORT = eINSTANCE.getReport();

		/**
		 * The meta object literal for the '<em><b>Url</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute REPORT__URL = eINSTANCE.getReport_Url();

	}

} //ReportPackage
